#ifndef MYPOSTMAN_H
#define MYPOSTMAN_H

#include <QMainWindow>
#include "common.h"
QT_BEGIN_NAMESPACE
namespace Ui { class MyPostman; }
QT_END_NAMESPACE

class MyPostman : public QMainWindow
{
    Q_OBJECT

public:
    MyPostman(QWidget *parent = nullptr);
    ~MyPostman();

    void RequestPOST(QString BaseUrl);
    void RequestGET(QString BaseUrl);

    void TableViewInit(); //初始化表头

    void TableViewInitEmpty();  // 初始化表头，但不新建空行



    void TableClear();      //清空tableview的数据

    void getUserList();     //获取用户列表

    void ListViewSetupInit();       //初始化ListView的内容

    void changeAsCheckFlag(int flag);   //根据checkFlag来改变界面

    void DBinit();                //自动建立数据库

private slots:
    void on_btn_exit_clicked();

    void on_btn_send_clicked();

    void httpReply(QNetworkReply * reply);

    void on_btn_add_clicked();

    void on_tableView_Params_doubleClicked(const QModelIndex &index);

    void on_tableView_Body_doubleClicked(const QModelIndex &index);

    void on_tableView_Headers_doubleClicked(const QModelIndex &index);

    void on_btn_clear_clicked();

    void on_btn_delete_clicked();

    void on_btn_changeUser_clicked();

    void on_btn_addNewUser_clicked();

    void insertHis();       //记录操作历史

    void getHistory();      //获取操作历史



    void on_listWidget_history_clicked(const QModelIndex &index);

    void on_btn_delete_history_clicked();

    void on_checkBox_JSON_clicked();

    void on_btn_addset_clicked();



    void on_btn_add_cancel_clicked();

    void on_btn_add_comfirm_clicked();

    void on_listView_setup_clicked(const QModelIndex &index);

    void on_btn_delete_set_clicked();

    void on_btn_Listclear_clicked();

    void on_btn_delete_user_clicked();

    void on_comboBox_prot_currentIndexChanged(int index);


private:
    Ui::MyPostman *ui;
    QNetworkAccessManager *m_accessManager;
    QStandardItemModel * SetupModel;
    QStandardItemModel * ParamModel;
    QStandardItemModel * BodyModel;
    QStandardItemModel * HeaderModel;
    AddNew * addNew;
    QString currentUser;
    QStringList UserList;

    int checkFlag;      //界面的CheckBox有没有被选中 0-未选择 1-选中
};
#endif // MYPOSTMAN_H
